package cn.wen.mybatis.framework.reflection;import java.util.concurrent.ConcurrentHashMap;import java.util.concurrent.ConcurrentMap;public class DefaultReflectorFactory implements ReflectorFactory{    private boolean classCacheEnabled = true;    private final ConcurrentMap<Class<?>, Reflector> reflectorMap = new ConcurrentHashMap<>();    public DefaultReflectorFactory() {    }    @Override    public boolean isClassCacheEnabled() {        return classCacheEnabled;    }    @Override    public void setClassCacheEnabled(boolean classCacheEnabled) {        this.classCacheEnabled = classCacheEnabled;    }    @Override    public Reflector findForClass(Class<?> type) {        if (classCacheEnabled) {            // synchronized (type) removed see issue #461            return reflectorMap.computeIfAbsent(type, Reflector::new);        } else {            return new Reflector(type);        }    }}